import java.util.List;

class RelationshipComputer<T> {

    Relationship computeRelationship(List objectList, List anotherObjectList) {
        if (objectList.size() == 0 && anotherObjectList.size() > 0) {
            return Relationship.SUBLIST;
        }

        if (anotherObjectList.size() == 0 && objectList.size() > 0) {
            return Relationship.SUPERLIST;
        }

        if (objectList.size() == 0 && anotherObjectList.size() == 0) {
            return Relationship.EQUAL;
        }

        List toBeFind;
        List toFind;

        if (objectList.size() > anotherObjectList.size()) {
            toBeFind = objectList;
            toFind = anotherObjectList;
        }else {
            toBeFind = anotherObjectList;
            toFind = objectList;
        }

        int moveCount = toBeFind.size() - toFind.size();

        for (int i = 0; i <= moveCount; i++) {
            boolean hasFindSublist = true;
            for (int j = 0; j < toFind.size(); j++) {
                if (toFind.get(j) != toBeFind.get(i+j)) {
                    hasFindSublist = false;
                    break;
                }
            }

            if (hasFindSublist){
                if (toBeFind.size() == toFind.size())
                    return Relationship.EQUAL;

                if (objectList.size() > anotherObjectList.size())
                    return Relationship.SUPERLIST;
                    else
                    return Relationship.SUBLIST;
            }
        }

        return Relationship.UNEQUAL;
    }
}